草庐IT

c++ - 单例 : C++ shared dll

全部标签

kotlin - 在 Kotlin 中带有参数的单例

这个问题在这里已经有了答案:SingletonwithparameterinKotlin(14个回答)关闭去年。Kotlinreference说我可以像这样使用object关键字创建一个单例:objectDataProviderManager{funregisterDataProvider(provider:DataProvider){//}}但是,我想向该对象传递一个参数。例如Android项目中的ApplicationContext。有没有办法做到这一点? 最佳答案 由于对象没有构造函数,我做了以下操作来在初始设置中注入(inj

objective-c - 单例模式实现

我到处都看到单例模式的这种特殊实现:+(CargoBay*)sharedManager{staticCargoBay*_sharedManager=nil;staticdispatch_once_tonceToken;dispatch_once(&onceToken,^{_sharedManager=[[CargoBayalloc]init];});return_sharedManager;}它似乎被接受为良好实践(这个特别来自CargoBay)。我唯一不明白的是第一行staticCargoBay*_sharedManager=nil;。为什么要将static变量设置为nil?

ios - ApplicationDelegate 单例 iphone

我使用单例在多个类之间共享一个数组,这个数组包含来自xml文件的一些信息。我有一个currencyView(当我滚动时,会创建新的currencyview)。当加载第一个CurrView时,它发生在应用程序启动时,尝试将数据传递给它但没有数据显示在第一个CurrencyView上,但是,当我滚动到下一个View,一切正常。我有一个想法,也许我尝试在我的mainwindow.xib文件全部加载之前访问一个单例(用于第一View),请帮助。 最佳答案 是的,您需要在启动时创建单例实例。但是,如果您使用thislink中的代码您可以直接访

ios - 是否有必要使用单例 CLLocationManager 来避免等待设备位置更新?

我一次又一次地听到总有比单例模式更好的模式,但我不明白我的应用程序如何在不等待GPS返回数据的情况下访问设备位置(我假设定位系统仅在明确要求时运行,如果错误请纠正我)。那么是否有更好的模式从多个(不相关的)Controller访问CLLocation数据?或者即使我没有通过CLLocationManager访问它,我是否可以期望设备位置在后台更新? 最佳答案 声明一个类。像下面这样。我的位置.h@protocolMyCLControllerDelegate-(void)locationUpdate:(CLLocation*)loca

ios - Apple单例代码警告......再次

我在一个应用程序中有这个单例代码,我会不时更新它。当我使用Apple引用代码时,我不得不更新它一两​​次,因为clang提示并且Apple更新了它作为回应。今天我尝试使用Xcode4.6进行分析,但我再次收到警告,尽管Apple已经两年没有更新了。我真的不明白他们怎么不能以静态分析器不会提示的方式对单例进行编码。如果他们觉得他们的引用代码是正确的,他们也不会改变静态分析器来适应他们的代码。但是回到代码,我有这个类:@implementationMySingletonstaticMySingleton*sSharedSingleton=nil;+(MySingleton*)sharedS

ios - 使用 Project_Prefix.pch 导入我的单例类 - 不好的做法?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion我在99%的项目中都使用了DataManager单例类。我没有考虑在每个类中导入它,而是像我对常量所做的那样将它导入pch文件中。这有什么缺点吗?这被认为是不好的做法吗?谢谢#import#ifndef__IPHONE_5_0#warning"ThisprojectusesfeaturesonlyavailableiniOSSDK5.0andlater."#endif#ifdef__OBJ

ios - UIManagedDocument 单例代码打开 WithCompletionHandler 调用两次并崩溃

我在CoreDatawithaSingleSharedUIManagedDocument上使用JustinDriscoll的实现.在我将它移至iPadStoryboard和ipad应用程序的SplitViewController之前,我的iPhone应用程序中的一切都很好。问题是openwithCompletionHandler被调用了两次,一次是从我在viewDidLoad的主视图中调用,一次是在我的详细ViewviewWillLoad中调用。这些调用是快速连续的,并且由于当第二次调用我的单例的performWithDocument方法(如下)时文档仍处于UIDocumentStat

ios - 使 UIViewController 成为单例?

在使用我的应用程序期间,用户应该能够开始、停止、转发背景音乐。(跨多个UIViewControllers)。为此,我将MusicPlayer设为单例(NSObject)。如果我在每个View中为它自己创建控件,它就可以工作,但我想要的基本上是一个View,它处理音乐播放器类并且一直存在。用户还应该能够通过向左或向右滑动View来“隐藏”和“显示”View。因此,如果它是隐藏的并且我更改了我的ViewController,它也应该隐藏在新的ViewController中并且音乐不应该被打断。我在我的主视图Controller中尝试了这个并且它有效:UIView*playerView=[[

ios - iOS Objective C 中的单例不会阻止多个实例

我知道有几个主题讨论这个问题,但没有一个能回答我的问题。我已经像这样实现了我的单例类(意识到关于单例的争议):+(MyClass*)sharedInstance{staticMyClass*_sharedInstance=nil;staticdispatch_once_toncePredicate;dispatch_once(&oncePredicate,^{_sharedInstance=[[MyClassalloc]init];});return_sharedInstance;}-(instancetype)init{self=[superinit];if(self){//setu

ios - 使用单例作为数据管理器类不好吗?

我通常创建需要存储数据的应用程序,并且该数据会在整个程序中使用。不过,它并不多,所以我通常使用NSUserDefaults来加载/保存这些数据。但是,保存/加载代码以及打包/解包数据会占用空间,我认为将此代码移动到全局单例中的可重用方法是个好主意。它似乎运作良好。尽管如此,最近我读了很多关于单例和全局对象的弊端,我开始重新考虑。人们常说,单例的使用几乎总是设计不佳的标志。在大多数情况下,我不同意(我认为像这样的简单使用是一种很好的设计模式),但我当然不是这方面的专家。那么,即使以这种简单的方式使用单例也不好吗?如果是这样,更好的选择是什么? 最佳答案